/* navigation.css */
/* LAST UPDATED: 2018-01-02 20:30 EST */





.breadcrumbBtn, .survey-breadcrumb {                
    border-radius: 0.5em;
    -moz-border-radius: 0.5em;
    -webkit-border-radius: 0.5em;
    display:inline-block;
    width: 10px;
    height: 10px;
    margin-left: 8px;
    background: transparent;
    opacity: 0.15;
}

.breadcrumbBtn.selected {opacity: 1.0;}

.survey-breadcrumb {background-color:#555;}
.survey-breadcrumb.selected {opacity:1.0;}

.breadcrumbBtn:hover {opacity:1.0; cursor:pointer;}





.offcanvas a:focus {
    background-color: #f1f1f1;
}

#appTray-pageList-wrapper {
    background-color: rgba(255,255,255,0.99);
    overflow-y: auto;
    -webkit-flex: 1 1 auto; flex: 1 1 auto;
    padding-top:10px;
}

@media all and (min-height:401px){
    #appTray-menuBottom {flex-shrink:0 !important; -webkit-flex-shrink:0 !important;}
}

@media all and (max-height:400px){
    #appTray-pageList-wrapper {display:none;}
    #appTray-menuBottom {-webkit-flex: 1 1 auto; flex: 1 1 auto; overflow-y:auto !important; -ms-overflow-style:auto;}
}

.footer,
.footer-mobile {
    color: #fff;
    position: absolute;
    left: 0px;
    bottom: -6px;
    height: 30px;
    width: 100%;
    text-align: center;
    z-index: 999;
    padding-left: 15px;
}
.footer-mobile {
    color: #000;
    position: relative;
}
.footer p span,
.footer-mobile p span {
    background: transparent;
    height: 10px;
    width: 10px;
    border-radius: 10px;
    position: absolute;
    margin: 6px 0px 0px 0px;
    border: 1px solid #fff;
    cursor: pointer;
}
.footer-mobile p span {
    background: white;
    border: 1px solid black;
}
.footer a.pt-trigger, .footer-mobile a.pt-trigger {
    padding-left: 10px;
}

.modal {
    position: absolute !important;
    height:100%;
    width:100%;
}


.modal-body{
    padding: 15px;
}
.modal-content {
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #999;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 6px;
    outline: 0;
    -webkit-box-shadow: 0 3px 9px rgba(0,0,0,.5);
    box-shadow: 0 3px 9px rgba(0,0,0,.5);
    padding: 20px;
}




/* =============================================================================== */ 
/* ========== APPLICATION appTray / NOTES BUTTONS ============= */

#app-body {display: -webkit-box; display: -ms-flexbox;  display: flex; -webkit-flex: 1 1 auto; flex: 1 1 auto; flex-direction: column !important; -webkit-flex-flow: column !important; width:100%;}
#chName-framework {position: absolute !important;}

#app-button-speakerNotes {
    font-family:"FontAwesome";
}

.menuStyle-menuBar #app-button-speakerNotes::after {
    content: "\f29c";
}

.menuStyle-float #app-button-speakerNotes::after {
    content: "\f128";
}

@media (min-width: 1000px)  {

    #app-body {position:relative; align-items: center !important; -webkit-align-items: center !important; justify-content: center !important; -webkit-justify-content: center !important; height:100%;}


    /* ================================= */
    /*AppTray notes button shape */

    .menuStyle-float #app-button-speakerNotes {                
        font-size: 18pt;
        border-radius: 50%;
        border: 2px solid;
        width: 50px;
        height: 50px;
        cursor: pointer;
        text-align: center;
    }

    .menuStyle-menuBar #app-button-speakerNotes {                
        font-size: 18pt;
        width: 50px;
        height: 50px;
        cursor: pointer;
        text-align: center;
    }

    /* ================================= */
    /*AppTray notes button positioning */

    .menuStyle-float #app-button-speakerNotes {
        position: absolute;
        right: 10px;
        top: 10px; 

    }

    .menuStyle-menuBar #app-button-speakerNotes {
        position: absolute;
        right: 0px;
        top: 0px;
    }


    /* ================================= */
    /*AppTray Toggle shape, closed */

    .menuStyle-float #appTray.closed .appTray-toggle {                
        font-size: 18pt;
        border-radius: 50%;
        border: 2px solid;
        width: 50px;
        height: 50px;
        cursor: pointer;
        text-align: center;
        vertical-align: middle;
        margin-top:10px;
        margin-left:10px;
    }

    .menuStyle-menuBar #appTray.closed .appTray-toggle {                
        font-size: 18pt;
        width: 50px;
        height: 50px;
        cursor: pointer;
        text-align: center;
        vertical-align: middle;
    }

    /* ================================= */
    /*AppTray Toggle shape, open */

    #appTray.open .appTray-toggle {
        width: 60px;
        height: 60px;
        cursor: pointer;
        text-align: center;
        vertical-align: middle;
        color:#fff;
        z-index:1;
    }


    /* ================================= */
    /*AppTray Toggle positioning */

    .appTray-toggle {
        position: absolute;
        top: 0px; 
    }

    .menuStyle-float .appTray-toggle {
        right: -60px;
    }

    .menuStyle-menuBar #appTray.closed .appTray-toggle {
        right: -50px;
    }  

    .menuStyle-menuBar #appTray.open .appTray-toggle {
        right: -60px;
    }

}

/* ================================= */
/* AppTray, mobile settings */

@media (max-width:999px) { 

    #appTray.closed .appTray-toggle {
        width: 50px;
        position:absolute;
        top:0px;
        left:0px;
        z-index:10;
    }

    #appTray-pageList-wrapper {max-height:60vh;}

    #appTray.open .appTray-toggle {
        width: 100%; 
        background-color:#333;
    }

    .appTray-toggle {                
        float:left;
        height: 50px;
        cursor: pointer;
        text-align: center;
        vertical-align: middle;
        color:#fff;
        font-size:18pt;
        flex-shrink:0;
        -webkit-flex-shrink:0;
    }

    #app-button-speakerNotes {                
        position:absolute;
        top:0px;
        right:0px;
        z-index:9;
        height: 50px;
        cursor: pointer;
        text-align: center;
        vertical-align: middle;
        color:#fff;
        font-size:18pt;
        width: 50px;
    }
}



#app-button-speakerNotes {font-weight:500; font-size: 16pt;}

.appTray-toggle,  #app-button-speakerNotes {flex-direction: column !important; -webkit-flex-flow: column !important; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; -webkit-align-items: center; justify-content: center; -webkit-justify-content: center}

body.tray-open #app-button-speakerNotes {z-index: 0;}




/* ================================= */
/* AppTray toggle animation */
.hamburgerMenu-stripe {width:20px; height:3px; border-radius:1px; transition: transform 0.5s cubic-bezier(.23,1,.32,1);}

body:not(.tray-open) .hamburgerMenu-stripe {transform: translateY(0px); margin-bottom:3px; }
body:not(.tray-open) .appTray-toggle:hover .hamburgerMenu-stripe:nth-child(1) {transform: translateY(6px); }
body:not(.tray-open) .appTray-toggle:hover .hamburgerMenu-stripe:nth-child(2) {opacity:1;}
body:not(.tray-open) .appTray-toggle:hover .hamburgerMenu-stripe:nth-child(3) {transform: translateY(-6px);}

body.tray-open .hamburgerMenu-stripe:nth-child(1) {transform: rotate(45deg) translateY(2px) translateX(2px); width:26px;}
body.tray-open .hamburgerMenu-stripe:nth-child(2) {opacity:0;}
body.tray-open .hamburgerMenu-stripe:nth-child(3) {transform: rotate(-45deg) translateY(-2px) translateX(2px);  width:26px;}





/* =============================================================================== */ 
/* ========== APPLICATION PREVIOUS / NEXT BUTTONS ============= */

.controller-button-next {font-weight:600;}
.controller-button-previous {font-weight:600;}

.discreteController .controller-button-next i {margin-left:10px; padding-top:3px;}
.discreteController .controller-button-previous i {margin-right:10px; padding-top:3px;}

.modalController .controller-button-next i {margin-left:5px;}
.modalController .controller-button-previous i {margin-right:5px;}


/* GENERAL RULES FOR BUTTON */
.vs-canvas-buttonPrevious, .vs-canvas-buttonNext, .vs-canvas-buttonHome {color:#fff; line-height:1pt; font-size:52pt; display: -webkit-box; display: -ms-flexbox; display: flex; align-items:center; -webkit-align-items:center; justify-content: center !important; -webkit-justify-content: center !important; transition:.25s ease; height:130px; top: calc(50% - 65px); width:60px; cursor: pointer;}

@media (min-width: 1000px) { 

    .controller-navArrows-wrapper {transition: opacity ease-out 0.3s;}

    /* POSITION OF BUTTON */
    .vs-canvas-buttonNext {position:absolute; right:0px; z-index:9;}
    .vs-canvas-buttonPrevious {position:absolute; left:0px; z-index:9;}
    .vs-canvas-buttonHome {position:absolute; right:0px; z-index:9;}

    /* PULL OUT FROM SIDE ACTION */
    .vs-canvas-buttonNext:hover {width:80px; padding-right:20px;}
    .vs-canvas-buttonPrevious:hover {width:80px; padding-left:20px;}
    .vs-canvas-buttonHome:hover {width:80px; padding-right:20px;}

    /* ARROWS INSIDE BUTTON */
    .vs-canvas-buttonNext:after {content:'\f105'; font-family: 'FontAwesome'; font-size:28pt; color:#fff; }
    .vs-canvas-buttonPrevious:after {content:'\f104'; font-family: 'FontAwesome'; font-size:28pt; color:#fff;}
    .vs-canvas-buttonHome:after {content:'\f015'; font-family: 'FontAwesome'; font-size:28pt; color:#fff;}

    body.linearButtonStyle-arrows .discreteController .controller-footer button {opacity:0 !important; pointer-events: none;}
}

@media (min-width:1000px) and (max-height:899px) {
    .discreteController .controller-footer button {height:40px; padding-left:30px !important; padding-right:30px !important;}
}

@media (min-width:1000px) and (min-height:900px) {
    .discreteController .controller-footer button {height:45px; padding-left:30px !important; padding-right:30px !important;}
}

@media (max-width:999px) {
    .controller-navArrows-wrapper {display:none;} 

    .discreteController .controller-footer button {-webkit-flex: 1 1 auto; flex: 1 1 auto; height:50px; width:50%}
}

/* NOT VALIDATED */
.vs-canvas-buttonNext.notValidated, .vs-canvas-buttonPrevious.notValidated {opacity:0.3; filter: saturate(0%);}



/* =============================================================================== */ 
/* ========== APP TRAY ============= */

/* ================================ */
/* SIDE NAV MEDIA QUERIES */
#appTray {font-family: 'Assistant';}

@media (min-width: 1000px)  { 
    #appTray {
        color: #000;
        height: 100%;
        width: 375px;
        position: absolute;
        z-index: 300;
        top: 0;
        transition: left 0.5s ease;    
        display: -webkit-box; display: -ms-flexbox; display: flex;
        flex-direction: column;	-webkit-flex-flow: column;
    }

    #app-button-speakerNotes {
        z-index: 300;
    }

    #appTray.closed {left: -375px;}
    #appTray.open {left: 0px;}  

    #appTray .navTitle {
        min-height:60px; 
        box-shadow: 0px 0px 7px rgba(0,0,0,0.3);
    }
}


@media (max-width:999px) { 
    #appTray {
        color: #000;
        width:100%;
        background-color: #fff;
        transition: max-height 0.5s ease;
        display: -webkit-box; display: -ms-flexbox; display: flex;
        flex-direction: column !important; -webkit-flex-flow: column !important;
    }
    #appTray.closed {
        max-height:50px;
        overflow-y:hidden;
        flex-shrink:0;
        -webkit-flex-shrink:0;
    }

    #appTray.open {
        max-height:90vh;
        position:relative;
        z-index:12;
    }    

    #appTray .navTitle {min-height:50px;}
    #appTray.open .navTitle {display:none;}

    #appTray.closed .navTitle{
        padding-right:50px;
        padding-left:50px;
    }
}

/* ================================ */
/* SIDE NAV TITLE */       
#appTray .navTitle {
    color: #fff;
    height: auto;
    padding: 10px;
    font-size:13pt;
    line-height:13pt;
    display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; -webkit-align-items: center; flex-direction: column; -webkit-flex-flow: column; justify-content: center; -webkit-justify-content: center;
    text-align:center;
    position:relative;
}    

/* ================================ */
/* SIDE NAV VIEW SELECTION */
.appTray-pageList-button:checked + label {pointer-events:none;}
.appTray-pageList-button + label:hover {cursor:pointer;}
.appTray-pageList-button + label {font-size: 11pt; font-weight: 600;width:100%; padding:8px 15px; min-height:35px;}

/* ================================ */
/* SIDE NAV VIEW SELECTION */
.appTray-viewObj-check {min-width:30px;}

/* ================================ */
/* SIDE NAV VIEW SELECTION */
.appTray-pageButton-wrapper {width:100%; padding:5px 15px; min-height:35px; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; -webkit-align-items: center;}

/* ================================ */
/* SIDE NAV MENU BUTTONS */

.appTray-menuButton {
    padding:10px;
    display: -webkit-box; display: -ms-flexbox; display: flex;
    align-items: center !important; -webkit-align-items: center !important;
}

.appTray-menuButton:hover {cursor:pointer;}

@media (min-width: 1000px)  {  
    .appTray-menuButton {
        margin-bottom:10px;
        min-height:60px;
        flex-direction: column !important; -webkit-flex-flow: column !important;
        justify-content: space-between !important; -webkit-justify-content: space-between !important;
        text-align:center;
    }

    .appTray-menuButton i {font-size:1.3em;}
    .appTray-menuButton div {margin-top:3px; font-size:11pt; font-weight:600;}

    #appTray-menuBottom {background-color:rgba(255,255,255,0.92); padding:15px;}
}

@media (max-width:999px) {  
    .appTray-menuButton {
        min-height:30px;
    }
    .appTray-menuButton i {width:30px; text-align: center; margin-right:10px; font-size:14pt;}
    .appTray-menuButton div {font-size:12pt; font-weight:600;}

    #appTray-menuBottom {background-color:#fff; border-top:1px solid #eee;}
}


.appTray-menuButtons-stdButton {opacity:0.75;}
.appTray-menuButtons-stdButton:hover {cursor:pointer; opacity:1.0;}


#appTray-pageList-wrapper .pageNavButton-input + label .appTray-thumb {
    outline: 1px solid rgba(0,0,0,0.2) !important;
}

.appTray-thumb {min-width: 80px; max-width: 80px; border:2px solid transparent; margin-right:10px;}
.appTray-thumbIcon {font-size:1.5em; margin-right:20px; margin-left:5px;}
#appTray-pageList-wrapper .pageNavButton-input:not(:checked) + label .appTray-thumbIcon {opacity:0.4;}

/* =============================================================================== */ 
/* ======== VIEW WRAPPER ======== */    
@media (min-width: 1000px)  {   
    body {width:100vw; height:100vh; flex-direction: column; -webkit-flex-flow: column !important; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; -webkit-align-items: center; justify-content: center; -webkit-justify-content: center}

    /* View: pageStyle-windowed */
    .pageStyle-windowed .discreteController .pagesWrapper {max-width:1600px; max-height:1000px; overflow: visible; position:relative; }

    .pageStyle-windowed .discreteController .pagesWrapper > .viewFrame-wrapper {animation-duration:0.75s; transition:left 0.6s cubic-bezier(0.57, 0.14, 0.13, 0.95), top 0.75s ease; top:0px; width:100%; min-height:300px; height:100%; background-color:#fff; overflow-x:hidden; overflow-y:hidden; position:absolute;}

    /* View: pageStyle-fullScreen */
    .pageStyle-fullScreen .discreteController .pagesWrapper {width: 100%; height:100%; overflow: visible; position:relative; }
    .pageStyle-fullScreen .discreteController .pagesWrapper > .viewFrame-wrapper {border-radius:0px !important; animation-name: null !important; transition:left 0.6s cubic-bezier(0.57, 0.14, 0.13, 0.95), top 0.75s ease; top:0px; width:100%; height:100%; background-color:#fff; overflow-y:hidden; position:absolute; }

    .viewFrame-wrapper {overflow-x:hidden; -webkit-flex: 1 1 auto; flex: 1 1 auto;}
}

@media only screen and (device-width: 768px) {
    /* For general iPad layouts */
    body { height:100% !important;}
}

.viewFrame-wrapper {position: relative;}


@media (max-width:999px) {   
    .discreteController .pagesWrapper {order:0; width:100%; overflow-x:hidden; overflow-y:auto; position:relative; display: -webkit-box; display: -ms-flexbox; display: flex; flex-direction: column !important; -webkit-flex-flow: column !important; -webkit-flex: 1 1 auto; flex: 1 1 auto;}
    .discreteController .pagesWrapper > .viewFrame-wrapper {transition:left 0.75s ease; width:100%; min-height:calc(100% - 100px); background-color:#fff; overflow-x:hidden; overflow-y:auto; -webkit-flex: 1 1 auto; flex: 1 1 auto;}
    body {overflow-y:hidden; display: -webkit-box; display: -ms-flexbox; display: flex; flex-direction: column !important; -webkit-flex-flow: column !important;}
    body, head, html {height:100vh;}
}

.discreteController .pagesWrapper > .viewFrame-wrapper:first-child {left:0px;}


@keyframes view-slideLeft-in {
    0%   {transform: perspective(800px) rotateY(-1deg); opacity:0.00;}
    25%  {transform: perspective(800px) rotateY(-1deg); opacity:1.00;}
    100% {transform: perspective(800px) rotateY(-0deg); opacity:1.00;}
}

@keyframes view-slideLeft-out {
    0%   {transform: perspective(800px) rotateY(-0deg); opacity:1.00}
    75%  {transform: perspective(800px) rotateY(-1deg); opacity:0.35}
    100% {transform: perspective(800px) rotateY(-1deg); opacity:0.00}
}

@keyframes view-slideRight-in {
    0%   {transform: perspective(800px) rotateY(1deg); opacity:0.00}
    25%  {transform: perspective(800px) rotateY(1deg); opacity:1.00}
    100% {transform: perspective(800px) rotateY(0deg); opacity:1.00}
}

@keyframes view-slideRight-out {
    0%   {transform: perspective(800px) rotateY(0deg); opacity:1.00}
    75%  {transform: perspective(800px) rotateY(1deg); opacity:0.35}
    100% {transform: perspective(800px) rotateY(1deg); opacity:0.00}
}

/* =============================================================================== */   
/* ======= BLUR & UNBLUR FOR MODALS AND TRAY ======= */

/* Note: Modals must reside outside of the allPagesWrapper in the mainLayout.jsp

/* Blur .controller-navArrows-wrapper if modal or tray is open */
body.modal-open .controller-navArrows-wrapper, body.tray-open .controller-navArrows-wrapper{opacity:0;}

/* Blur .discreteController .pagesWrapper if modal or tray is open */
body.modal-open .discreteController .pagesWrapper, body.tray-open #app-body, .modal.modal-open, body.modal-open .discreteController .controller-footer, body.modal-open .discreteController .staticColumn {-webkit-filter: blur(5px) ; -moz-filter: blur(5px) ; -ms-filter: blur(5px) ; filter: blur(5px) ;}
body.modal-open:not(.modalController-open) .discreteController .controller-header {-webkit-filter: blur(5px) ; -moz-filter: blur(5px) ; -ms-filter: blur(5px) ; filter: blur(5px) ;}
body.modal-open:not(.modalController-open) #app-button-speakerNotes, body.modal-open:not(.modalController-open) .appTray-toggle {-webkit-filter: blur(5px) ; -moz-filter: blur(5px) ; -ms-filter: blur(5px) ; filter: blur(5px) ;}


/* Blur #navWrapper if modal or tray is open */
body.tray-open #navWrapper, body.tray-open #app-button-speakerNotes {-webkit-filter: blur(5px) ; -moz-filter: blur(5px) ; -ms-filter: blur(5px) ; filter: blur(5px) ;}

/* Blur #appTray if modal is present */
.menuStyle-float.modal-open #appTray, .menuStyle-float.modal-open #app-button-speakerNotes, .menuStyle-float.modal-open .discreteController .breadcrumb-wrapper {z-index: 0; -webkit-filter: blur(5px) ; -moz-filter: blur(5px) ; -ms-filter: blur(5px) ; filter: blur(5px) ;}



body.tray-open div.modal {opacity:0.6; -webkit-filter: blur(5px) ; -moz-filter: blur(5px) ; -ms-filter: blur(5px) ; filter: blur(5px) ;}


/* =============================================================================== */   
/* =============================================================================== */   
@media (max-width:999px) {
    .discreteController .pagesWrapper .viewFrame-wrapper {border-radius:0px !important; position:absolute; height:100%;}
}
/* =============================================================================== */ 
/* ========== COMMON POPUPS ============= */

.modal-newOpen-wrapper {max-width: 1100px; max-height:650px;}
.modal-salesWelcome_analysisManager-wrapper {max-width:900px; max-height:650px; background-size:cover; background-position:center center;}
.modal-salesWelcome_createNewAnalysis-wrapper {max-width:500px; max-height:450px; background-size:cover; background-position:center center;}


.modal-delete-wrapper {max-width: 400px; max-height:300px;}
.modal-logout-wrapper {max-width: 400px; max-height:200px;}
.modal-about-wrapper {max-width: 700px; max-height:400px;}
.modal-appSettings-wrapper {max-width:600px; max-height:500px;}
.modal-saveAs-wrapper {max-width: 500px; max-height:250px;}
.modal-auditLog-wrapper {max-width:800px; max-height:600px;}
.modal-devTools_errorReport-wrapper {max-width:1000px; max-height:600px;}


.newOpen-button-delete {opacity:0.5;}
.newOpen-button-delete:hover {opacity: 1.0; cursor:pointer;}

.modal {
    display: -webkit-box; display: -ms-flexbox; display: flex;  
    align-items: center !important; -webkit-align-items: center !important;
    justify-content: center !important; -webkit-justify-content: center !important;
}

.modal:not(.displayUnderTray) {
    z-index:400;
}

.modal.displayUnderTray {
    z-index:100;
}



.modal-notes-frame {max-width:900px; max-height:500px;}

#generalModal {background-color:rgba(0,0,0,0.6);}

/* OVERRIDE TO LESS THEME */
.modal-backdrop.in {background-color:#666;}

.modal-size-max, .modal-size-fitToContent {background-color:#fff; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.2); animation-duration: 500ms; animation-name: slide-down; position:relative; animation-timing-function:ease;}


@keyframes slide-down {
    0% {
        top:-100px;
    }
    100% {
        top:0px;
    }
}

@media (min-width:1000px) {
    .modal-size-fitToContent {width: calc(100% - 200px);}
    .modal-size-max {width: calc(100% - 130px); height: calc(100% - 80px);}
}

@media (max-width: 999px) and (min-width: 768px)  {
    .modal-size-fitToContent {width: calc(100% - 60px); height: calc(100% - 20px);}
    .modal-size-max {width: calc(100% - 20px); height: calc(100% - 20px);}
}

@media (max-width:767px) {
    .modal-size-fitToContent {width: calc(100% - 30px);}
    .modal-size-max {width: calc(100% - 30px); height: calc(100% - 30px);}
    .modal-size-fullScreen-xs-down {width: calc(100% - 20px) !important; height: calc(100% - 20px) !important; max-height:100% !important;}
    .fullScreen-xs-down {width: 100% !important; height: 100% !important; max-height:100% !important;}
}




/* =============================================================================== */
/* =========== TOAST ============ */
.toast-wrapper {width: calc(100% - 80px); min-height:25px;  position:absolute; left:40px; pointer-events: none;}
.toast-inner .toast-icon {font-size:2.5em; padding:10px 10px;}
.toast-inner {animation-duration:0.75s; box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.10); position:relative; pointer-events:auto;}
.toast-body {padding:5px 20px;}
.toast-inner.rounded {border-radius:25px;}
.toast-wrapper.bottom {bottom:0px;}
.toast-wrapper.bottom .toast-inner {animation-name:toast-bottom; bottom:25px;}
.toast-wrapper.top {top:0px;}
.toast-wrapper.top .toast-inner {animation-name:toast-top; top:25px;}
.toast-dismiss {opacity:0.5;}
.toast-dismiss:hover {opacity:1.0; cursor:pointer;}

@keyframes toast-bottom {
    0%   {opacity: 0.0; bottom:-50px}
    100% {opacity: 1.0; bottom:25px;}
}

@keyframes toast-top {
    0%   {opacity: 0.0; top:-50px}
    100% {opacity: 1.0; top:25px;}
}


/* =============================================================================== */ 
/* ========== REGISTRATION AND LOGIN ============= */

/* ================================================== */
/* Login Page */

/* Styling of frame */
#modal-login-wrapper, #modal-registration-wrapper { box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.15);}


/* Image on login page */
@media (min-width: 768px)  {
    .modal-login-title-wrapper {background-size:cover; background-position:center center;}
    .modal-login-form-wrapper {background-color:#fff}
}
@media (max-width: 768px) {
    #modal-login-wrapper {background-color:#fff;}
}

@media (max-height: 599px)  {  
    #modal-login-wrapper { max-height:400px;}
}

@media (min-height: 600px)  {  
    #modal-login-wrapper { max-height:450px;}
}

@media (min-width: 768px)  {  
    #modal-login-wrapper {max-width:900px;  width:100%; height:100%; overflow:hidden;}
    #modal-registration-wrapper {max-width:900px; max-height:500px; width:100%; height:100%; overflow:hidden;}
}

.common-body {padding:20px; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: center !important; -webkit-justify-content: center !important; align-items: center !important; -webkit-align-items: center !important;}

.sm-wrapper {width:100%; max-width:500px; border-radius:3px; box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.15); background-color:#fff; overflow:hidden; }
#login-email + label, #login-password + label {position:absolute; top:0px; left:0px; display:flex; align-items:center; justify-content: center; height:100%; width:35px; text-align:center; font-family: 'FontAwesome' !important;}
#login-email + label:after {content:"\f007";}
#login-password + label:after {content:"\f13e";}

@media all and (min-height: 550px) {  
    .poweredBy-badge {position:absolute; bottom:10px; left:0; right:0; margin:0 auto;}
}

@media all and (max-height: 550px) {  
    .poweredBy-badge {display:none !important;}

}

@media all and (max-height: 600px) and (max-width: 767px) {  
    .poweredBy-badge {display:none !important;}
    #common-appTitle {display:none;}
}

/* =============================================================================== */ 
/* ========== IMAGE UPLOAD ============= */

#createReport-logoWrapper {height:200px; min-height: 100px;}

#imageUpload-wrapper .croppie-container {
    width: 100%;
    height: 275px;
}

.modal-imageUpload-wrapper {max-width: 450px; max-height:500px;}


/* =============================================================================== */ 
/* ========== DEBUG PANEL ============= */

#debugWindow { 
    z-index: 10000; 
    position: absolute;
    left: 0px;     
    top: 10px; 
    display: none; 
    width: 100%; 
    margin-top: 1px; 
    pointer-events:none;
}

#debugWindow .inner {
    min-width:750px;
    margin:0px auto;
    background-color: #fff; 
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.5);
    border-radius:3px;
    pointer-events:auto;
}

#debugTool-elementIdentifier {
    min-width: 700px;
    min-height:40px;
    font-size:10.5pt;
    background-color:rgba(0,0,0,0.75);
    color:#fff;
    padding-left:10px;
    padding-right:10px;
    padding-bottom:10px;
    padding-top:10px;
    border-radius: 0px 0px 4px 4px;
    position:relative;
    z-index:-1;
    animation-duration:0.25s;
    animation-name: tray-slideDown;
    pointer-events:auto;
}

.elementIdentifier-onHover {
    filter:brightness(50%);
    background-color:rgba(0,0,0,0.3);
}


#elementIdentifier-nrInput {
    position:absolute;
    top:-50px;
    left:0px;
    opacity:0;
    pointer-events:none;
}

@keyframes tray-slideDown {
    0%   {opacity:0.00; top:-50px;}
    25%  {opacity:1.00; top:-25px;}
    100% {opacity:1.00; top:0px;}
}

.debugTool-paddingColor {
    border:#93D309 solid 1px;
    background-image:linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%), linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%);
    background-clip: content-box, padding-box;
}

/* =============================================================================== */ 
/* ========== LOADING MODAL LOGO ============= */

@keyframes logo-unhide {
    0% {
        opacity:0;
        transform: translateY(50px);
    }
    100% {
        opacity:1;
        transform: translateY(0px);
    }
}

#loading-logoWrapper {overflow:hidden; position:relative;}
#loading-logoWrapper img {opacity:0; animation: logo-unhide 0.35s ease-out; animation-iteration-count:1; animation-fill-mode: forwards;}

/* =============================================================================== */ 
/* ========== SPINNER ANIMATION ============= */

.spinner {
    margin: 100px auto 0;
    width: 70px;
    height:30px;
    text-align: center;
}

.spinner > div {
    width: 18px;
    height: 18px;
    background-color: #fff;
    opacity:0.5;

    border-radius: 100%;
    display: inline-block;
    -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
    animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.spinner .bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

.spinner .bounce3 {
    -webkit-animation-delay: -0.0s;
    animation-delay: -0.0s;
}

@-webkit-keyframes sk-bouncedelay {
    0%, 80%, 100% { -webkit-transform: scale(0) }
    40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
    0%, 80%, 100% { 
        -webkit-transform: scale(0);
        transform: scale(0);
    } 40% { 
        -webkit-transform: scale(1.0);
        transform: scale(1.0);
    }
}

/* =============================================================================== */ 
/* ========== ON HOVER HIGHLIGHT ============= */

.onHover-highlight {top:0px; box-shadow: 0px 0px 0px 0px rgba(50, 50, 50, 0.0); opacity:1; transition: top 0.25s ease, box-shadow 0.25s ease, opacity 0.1s ease;}
.onHover-highlight:hover {top:5px; box-shadow: 0px 4px 2px 0px rgba(50, 50, 50, 0.25); cursor:pointer;}

.onHover-fadeOthers.noHover {opacity:0.35 !important;}


/* =============================================================================== */ 
/* ========== CHALLENGE SURVEY ============= */
.survey-bar {height:25px;}
.challengeSurvey-wrapper {width: calc(100% - 5px);}




#modal_introduction {z-index:400;}





/* =============================================================================== */ 
/* ========== Audit Log ============= */

.auditLog-option + label {
    width:100%; height:55px; border-bottom:1px solid #eee; line-height:1.1em; cursor:pointer; padding-left:10px; padding-right:10px; flex-shrink:0 !important; -webkit-flex-shrink:0 !important;
}





.calculator-chart-sec {margin-top:20px; flex-shrink:0 !important; -webkit-flex-shrink:0 !important; flex:1 1 auto; display: -webkit-box; display: -ms-flexbox; display: flex; flex-direction: column !important; -webkit-flex-flow: column !important; justify-content: flex-end !important; -webkit-justify-content: flex-end !important;}
.calculator-chart {flex:1 1 auto; max-height: 300px; min-height:150px; width:100%;}